1. Field of the Invention
The present invention relates to a router device for connecting a virtual connection network with another virtual connection network or non-virtual connection network, and a datagram transfer method using a router device in a data communication network system.
2. Description of the Background Art
A router device is used for connecting LANs, and transferring datagram from one LAN to another LAN. Datagram contains communication data as well as source and final destination network layer addresses (such as IP addresses in a case of IP), and the router device determines an output interface and a next transfer node (a router device or a host functioning as a communication terminal) for the datagram according to these address information.
Here, a datagram transfer scheme in a conventional router device will be described with reference to FIG. 1, for an exemplary case of a router device connected with Ethernet which is a non-virtual connection oriented LAN. When an Ethernet frame (datalink frame) is received from a LAN, a reception unit 911 changes the received datalink frame into a datagram suitable for handling at the network layer. Then, a datagram analysis unit 921 determines an output interface and a network layer address of a next transfer node (a host or a router device) from the final destination address of that datagram, and gives that datagram to a datagram processing unit 922 of the determined output interface via a transfer unit 930. The datagram processing unit 922 which received the datagram then carries out the network layer processing (a processing to reduce TTL (Time To Live), a checksum calculation, an optional processing, etc. in a case of IP). Finally, a transmission unit 913 determines an Ethernet address (datalink layer address) from the network layer address of the next transfer node, constructs an Ethernet frame from that address and the datagram, and outputs the constructed Ethernet frame to the LAN.
The datagram transfer is carried out similarly in a case of ATM which is a virtual connection oriented LAN. First, when an ATM cell is received from a LAN, the received ATM cell is changed into an AAL (ATM Adaptation Layer) frame (datalink frame), and this AAL frame is changed into a datagram suitable for handling at the network layer. Then, an output interface and a network layer address of a next transfer node is determined from the final destination address of that datagram, and the network layer processing is carried out. Finally, at the transmission unit 913, a virtual connection identifier of a virtual connection for transferring the datagram is determined from the network layer address of the next transfer node, an ATM cell is constructed from that identifier and the datagram, and the constructed ATM cell is outputted to the LAN.
Now, regardless of whether it is a router device connected with the virtual connection oriented LAN or a router device connected with the non-virtual connection oriented LAN, at a time of transferring datagram, an output target is determined by referring to datagram content (including a header information such as a source address, a destination address, and a type of service, and an upper layer information such as a port address in a case of IP) at a datagram analysis unit. For this reason, a considerable transfer processing time is taken by the datagram analysis unit, and consequently it has been impossible to realize a high speed transfer of datagram.
Moreover, when the requested quality of service is different for different datagrams to be transferred, it is preferable to carry out the processing which accounts for the requested quality of service for different datagrams rather than just processing datagrams according to an order of their arrivals. To this end, as shown in FIG. 2, it is possible to provide a function called scheduler 961, which controls an order by which datagrams are to be given to a next function not just according to their arrival order but also by accounting for their requested quality of service.
However, an information concerning the quality of service requested to each datagram is to be obtained by referring to datagram content, so that as shown in FIG. 2, it has been necessary to carry out a priority control processing (scheduling) at the scheduler 961 only after the processing at the datagram analysis unit 921 is applied, according to the result of this processing at the datagram analysis unit 921. This scheduling is effective in a case of output processing datagrams in an order of their requested quality of service when a transmission interface to a next hop node does not have a sufficient capacity.
But, in a case where the analysis processing power of the datagram analysis unit 921 itself is not sufficient, despite of the fact that a processing wait time at the datagram analysis unit 921 can be a problem from a viewpoint of an overall performance, the scheduling accounting for the quality of service cannot be carried out at this point because the priority level information is not yet available at this point, and consequently it has been necessary for the scheduler 961 to carry out the processing in the arrival order.
Thus in a conventional router device, the transfer target cannot be determined and the quality of service cannot be ascertained until the datagram content is referred.